﻿
namespace GLog
{
    public interface ILog
    {
        ILog ChainedLog { get; set; }

        /// <summary>
        /// Initial log before any log is performed.
        /// </summary>
        void Initial();

        /// <summary>
        /// Write log after the log is formed.
        /// </summary>
        void WriteLog();

        /// <summary>
        /// Write a message entry.
        /// </summary>
        void LogMessage(string message);
        
        /// <summary>
        /// Write a Warning entry
        /// </summary>
        void LogWarning(string warning);
        
        /// <summary>
        /// Write an Error entry
        /// </summary>
        void LogError(string error);

        void LogHeader(string header);
    }
}
